home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 007 / msd210.arc / MSD210.PSP < prev   
Text File  |  1985-07-12  |  4KB  |  72 lines

  1. ;        MSDOS 2.10 PROGRAM SEGMENT PREFIX STRUCTURE
  2. ;
  3. ;        ORG     0
  4. ;
  5. ;--------NOTE THAT THIS IS GENERATED BY THE LOADER AND SHOULD NOT
  6. ;        BE INCLUDED IN ANY PROGRAMS
  7. ;
  8. QUIT:    INT     20H     ;CP/M-style warm-boot at end of program
  9. FREE     DW      (?)     ;segment of first free memory above pgm
  10.                          ;filled in when PSP is built by INT 21 FN 26 or 55
  11.          DB      (?)     ;unknown
  12. BDOS     DB      9AH     ;CS:0005--CALL FAR opcode for CP/M-style dispatching
  13.          DW      16*[FREE]       ;number of bytes in pgm, -16
  14.          DW      12-[FREE]       ;fake segment for FAR CALL, set up by
  15.                                  ;build-PSP routine to put call's actual
  16.                                  ;address at 0000:00C0 via wraparound!
  17.                                  ;This, in turn, has FAR JUMP to DOS dispatch
  18. ;
  19. OLD22    DWORD   (?)     ;CS:000A--INT-22 vector of parent program
  20. OLD23    DWORD   (?)     ;CS:000E--INT-23 (CTRL-C) vector of parent program
  21. OLD24    DWORD   (?)     ;CS:0012--INT-24 (fatal error) vector of parent
  22. OLDPSP   DW      (?)     ;CS:0016--PSP Segment of parent program
  23. ;
  24. HANTBL   DB      01      ;CS:0018--Current STDIN  (handle 0) FCB index
  25.                          ;May be changed by DOS redirection feature
  26.          DB      01      ;CS:0019--Current STDOUT (handle 1) FCB index
  27.                          ;May be changed by DOS redirection feature
  28.          DB      01      ;CS:001A--Current STDERR (handle 2) FCB index
  29.                          ;Cannot be redirected by DOS features
  30.          DB      00      ;CS:001B--Current  AUX:  (handle 3) FCB index
  31.                          ;Cannot be redirected by DOS features
  32.          DB      02      ;CS:001C--Current  PRN:  (handle 4) FCB index
  33.                          ;Cannot be redirected by DOS features
  34.          DB      15 DUP(0FFH)
  35.                          ;User file handle FCB index entries. FF means
  36.                  ;entry is not used. Otherwise these point to 40-byte
  37.                  ;FCB/DCB blocks in the main DOS segment.
  38.                  ;These values are copied from parent's PSP so that all open
  39.                  ;files are passed to the new program
  40. ;
  41. ENVIR    DW      (?)     ;CS:002C--Segment for current Environment area.
  42.                  ;Is separate copy from that of parent, made by Build-PSP
  43. SAVESP   DW      (?)     ;CS:002E--Saved SP (offset) last time INT 21 used.
  44. SAVESS   DW      (?)     ;CS:0030--Saved SS (segment) last time INT 21 used.
  45. ;
  46.          DB      30 DUP(0)
  47.                          ;unknown significance, apparently not used for
  48.                          ;anything in version 2.10. may be used with 3.x
  49. ;
  50. DISPAT:  INT     21H     ;CS:0050--long call to DOS function dispatcher
  51.          RET     FAR
  52. ;
  53.          DB      9 DUP(0)
  54.                          ;unknown significance, apparently unused.
  55. ;
  56. FCB1     DB      0,11 DUP(' ')   ;CS:005C--per manuals
  57.          DW      0
  58.          DW      0
  59. FCB2     DB      0,11 DUP(' ')   ;CS:006C--per manuals
  60.          DW      0
  61.          DW      0
  62. ;
  63.          DB      4 DUP(0)        ;unknown, apparently not used.
  64. ;
  65. DEFDTA   DB      0       ;count of command-tail characters, not including CR
  66.          DB      127 DUP (?)
  67.                          ;command-tail buffer, holds command line.
  68.                  ;This area is also assigned by the loader as the default DTA
  69. ;
  70. ;        END OF PROGRAM SEGMENT PREFIX
  71.  
  72.